/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Logica;

import java.io.Serializable;
import javax.persistence.*;
import java.sql.Time;
import java.util.Calendar;
import java.util.LinkedList;
import java.util.List;

/**
 *
 * @author Pablo
 */
@Entity
public class ReparacionEnEjecucion implements Serializable {
    
    @Id
    private int nroReparacionEnEjecucion;
    @Basic
    @Temporal(javax.persistence.TemporalType.DATE)
    private Calendar fechaInicio;
    @Basic
    private Time horaInicio;
    @Basic
    private Time horaFin;
    @Basic
    private double tiempoTotal;
    @OneToOne
    private Vehiculo unVehiculo;
    @OneToMany
    private List<DetalleEjecucion> detallesEjecucion;
    @OneToOne
    private Taller unTaller;
    @OneToOne
    private Diagnostico unDiagnostico;
    @OneToOne
    private EstadoEjecucion unEstadoEjecucion;
    @OneToOne
    private EstadoVehiculo unEstadoEntrada;
    @OneToOne
    private EstadoVehiculo unEstadoSalida;
    
    
    public ReparacionEnEjecucion() {
    }

    public ReparacionEnEjecucion(int nroReparacionEnEjecucion, Calendar fechaInicio, Time horaInicio, Time horaFin, double tiempoTotal, 
            Vehiculo unVehiculo, Taller unTaller, Diagnostico unDiagnostico, EstadoEjecucion unEstadoEjecucion, 
            EstadoVehiculo unEstadoEntrada, EstadoVehiculo unEstadoSalida) {
   
        this.nroReparacionEnEjecucion = nroReparacionEnEjecucion;
        this.fechaInicio = fechaInicio;
        this.horaInicio = horaInicio;
        this.horaFin = horaFin;
        this.tiempoTotal = tiempoTotal;
        this.unVehiculo = unVehiculo;
        this.detallesEjecucion = new LinkedList();
        this.unTaller = unTaller;
        this.unDiagnostico = unDiagnostico;
        this.unEstadoEjecucion = unEstadoEjecucion;
        this.unEstadoEntrada = unEstadoEntrada;
        this.unEstadoSalida = unEstadoSalida;
    }

    public int getNroReparacionEnEjecucion() {
        return nroReparacionEnEjecucion;
    }

    public void setNroReparacionEnEjecucion(int nroReparacionEnEjecucion) {
        this.nroReparacionEnEjecucion = nroReparacionEnEjecucion;
    }

    public Calendar getFechaInicio() {
        return fechaInicio;
    }

    public void setFechaInicio(Calendar fechaInicio) {
        this.fechaInicio = fechaInicio;
    }

    public Time getHoraInicio() {
        return horaInicio;
    }

    public void setHoraInicio(Time horaInicio) {
        this.horaInicio = horaInicio;
    }

    public Time getHoraFin() {
        return horaFin;
    }

    public void setHoraFin(Time horaFin) {
        this.horaFin = horaFin;
    }

    public double getTiempoTotal() {
        return tiempoTotal;
    }

    public void setTiempoTotal(double tiempoTotal) {
        this.tiempoTotal = tiempoTotal;
    }

    public Vehiculo getUnVehiculo() {
        return unVehiculo;
    }

    public void setUnVehiculo(Vehiculo unVehiculo) {
        this.unVehiculo = unVehiculo;
    }

    public List<DetalleEjecucion> getDetallesEjecucion() {
        return detallesEjecucion;
    }

    public void setDetallesEjecucion(List<DetalleEjecucion> detallesEjecucion) {
        this.detallesEjecucion = detallesEjecucion;
    }

    public Taller getUnTaller() {
        return unTaller;
    }

    public void setUnTaller(Taller unTaller) {
        this.unTaller = unTaller;
    }

    public Diagnostico getUnDiagnostico() {
        return unDiagnostico;
    }

    public void setUnDiagnostico(Diagnostico unDiagnostico) {
        this.unDiagnostico = unDiagnostico;
    }

    public EstadoEjecucion getUnEstadoEjecucion() {
        return unEstadoEjecucion;
    }

    public void setUnEstadoEjecucion(EstadoEjecucion unEstadoEjecucion) {
        this.unEstadoEjecucion = unEstadoEjecucion;
    }

    public EstadoVehiculo getUnEstadoEntrada() {
        return unEstadoEntrada;
    }

    public void setUnEstadoEntrada(EstadoVehiculo unEstadoEntrada) {
        this.unEstadoEntrada = unEstadoEntrada;
    }

    public EstadoVehiculo getUnEstadoSalida() {
        return unEstadoSalida;
    }

    public void setUnEstadoSalida(EstadoVehiculo unEstadoSalida) {
        this.unEstadoSalida = unEstadoSalida;
    }
    
    
}
